开发环境:
开发系统:Ubuntu 20.04
开发板:小凌派-RK2206开发板
OpenHarmony版本:3.0.0-LTS
RK2206开发板自带WiFi,SDK也提供了相应的驱动,只需要打开连接WiFi的线程即可。WiFi的初始化线程函数在device/rockchip/rk2206/sdk_liteos/board/src/config_network.c中。
UINT32 ExternalTaskConfigNetwork(VOID)
{
UINT32 ret;
//ret = TaskConfigApMode();
ret = TaskConfigWifiMode();
return ret;
}
这里默认使用STA模式,当然也可将WiFi设置为AccessPoint模式,也就是我们常说的热点,本文就使用默认模式就行。WiFi的配置也是一个线程,源代码如下:
UINT32 TaskConfigWifiMode(VOID)
{
UINT32 ret;
TSK_INIT_PARAM_S task = { 0 };
task.pfnTaskEntry = (TSK_ENTRY_FUNC)TaskConfigWifiModeEntry;
task.uwStackSize = OS_TASK_STACK_SIZE;
task.pcName = "taskConfigWifiModeEntry";
task.usTaskPrio = 8;
ret = LOS_TaskCreate(&g_wifiTask, &task);
if (ret != LOS_OK) {
LZ_HARDWARE_LOGE(LOG_TAG, "rknetwork LOS_TaskCreate taskConfigWifiModeEntry error: %d\n", ret);
return ret;
}
return LOS_OK;
}
更详细的代码请自行查看device/rockchip/rk2206/sdk_liteos/board/src/config_network.c吧。
下面我们简单修改下代码,让RK2206开发板连接WiFi。
1.修改WiFi账户信息
修改文件device/rockchip/rk2206/sdk_liteos/board/src/config_network.c 中的SSID WiFi名称,PASSWORD WiFi密码。
#define SSID "media"
#define PASSWORD "12345678"
以上信息根据自己的实际情况修改。
2.开启WiFi线程
打开main文件device/rockchip/rk2206/sdk_liteos/board/main.c wifi功能。
ExternalTaskConfigNetwork();
接下来编译,编译下载固件,调试信息如下:
可以看到开发板已经获取到IP地址了,下面查看WiFi是否连接成功。
将PC与开发板连接到同一个网络,然后ping下开发板。
说明已经成功连接到网络了。
欢迎访问我的网站
BruceOu的哔哩哔哩
BruceOu的主页
BruceOu的博客
BruceOu的CSDN博客
BruceOu的简书
BruceOu的知乎
欢迎订阅我的微信公众号
关注公众号[嵌入式实验楼]获取更多资讯